package com.wclass.entity;

import com.alibaba.fastjson.annotation.JSONField;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableLogic;
import com.baomidou.mybatisplus.annotations.TableName;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

/**
 * <p>
 * 课程作业
 * </p>
 *
 * @author 张浩高
 * @since 2018-12-20
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("coures_task")
@SuppressWarnings("serial")
public class CouresTask extends SuperEntity<CouresTask> {


    /**
     * 是否删除 0：有效，1：删除
     */
    @JSONField(serialize = false)
    @TableLogic
    private Integer state = 0;
    /**
     * 课程id
     */
    @ApiModelProperty("课程id")
    @TableField("course_info_id")
    private Long courseInfoId;
    /**
     * 用户id
     */
    @ApiModelProperty("用户id")
    @TableField("user_id")
    private Long userId;

    /**
     * 上级id
     */
    @ApiModelProperty("上级id")
    @TableField("p_id")
    private Long pId;

    /**
     * 标题
     */
    @ApiModelProperty("标题")
    private String title;
    /**
     * 备注
     */
    @ApiModelProperty("备注")
    private String remarks;

    /**
     * 附件
     */
    @ApiModelProperty("附件(json格式)")
    @TableField("att_url")
    private String attUrl;

    /**
     * 评分（0:A,1:B,2:C,3:D）
     */
    @ApiModelProperty("评分（0:A,1:B,2:C,3:D）")
    private Integer score;
    /**
     * 老师评价
     */
    @ApiModelProperty("老师评价")
    private String evaluate;

    /**
     * 提交状态（0：未提交，1：已提交，2：已打分，3：催交）
     */
    @ApiModelProperty("提交状态（0：未提交，1：已提交，2：已打分，3：催交）")
    @TableField("submit_state")
    private Integer submitState;


    @ApiModelProperty("用户昵称")
    @TableField(value = "nick_name", exist = false)
    private String nickName;

    @ApiModelProperty("用户头像")
    @TableField(value = "picture_address", exist = false)
    private String pictureAddress;

    @TableField(exist = false)
    @ApiModelProperty("用户职位")
    private String postname;

    @ApiModelProperty("封面")
    private String cover;

    @ApiModelProperty("点赞数")
    @TableField(value = "like_num")
    private Integer likeNum;

    @ApiModelProperty("评论数")
    @TableField(value = "comment_num")
    private Integer commentNum;

    @ApiModelProperty("0 已点赞 1 未点赞")
    @TableField(exist = false)
    private Integer isLike;

    @TableField(exist = false)
    private Integer finished;

    @TableField(exist = false)
    private Integer totality;

    @TableField(exist = false)
    private String week;

    @ApiModelProperty("0 未关注 1 已关注")
    @TableField(exist = false)
    private Integer isFocus;
}
